package fornecedor;

import java.util.Collection;
import java.util.LinkedList;

import fornecedor.exceptions.ExceptionRazao;
import fornecedor.exceptions.FornecedorNaoEncontradoException;

public class RepositorioFornecedor implements IRepositorioFornecedor{
	private static Collection<Fornecedor> listaFornecedor = new LinkedList<Fornecedor>();

	public static Collection<Fornecedor> getListaFornecedor() {
		return listaFornecedor;
	}

	public static void setListaFornecedor(Collection<Fornecedor> listaFornecedor) {
		RepositorioFornecedor.listaFornecedor = listaFornecedor;
	}
	
	public void CadastraFornecedor(Fornecedor empresa){
		listaFornecedor.add(empresa);
	}
	
	public Fornecedor PesquisaRazaoSocial(String razao) throws ExceptionRazao{
		if (listaFornecedor.size() < 1){
			throw new ExceptionRazao();
		}
		Fornecedor achou = null;
		for (Fornecedor empresa: listaFornecedor){
			if (empresa.getRazaoSocial().equals(razao)){
				achou = empresa;
				break;
			}
		} 
		return achou; 
	}

	
	
	

	public void excluirFornecedor(String razao){
		
		listaFornecedor.remove(razao);
		
	
		
	}

	public void alterarFornecedor(Fornecedor fornecedor){
		
		for(Fornecedor frn: listaFornecedor){
			if(frn.getCodigoFornecedor() == fornecedor.getCodigoFornecedor()){
				
				frn.setRazaoSocial(fornecedor.getRazaoSocial());
				frn.setNomeFantasia(fornecedor.getNomeFantasia());
				frn.setCnpj(fornecedor.getCnpj());
				frn.setInscrEstadual(fornecedor.getInscrEstadual());
				frn.setEndereco(fornecedor.getEndereco());
				frn.setTelefone(fornecedor.getTelefone());
				frn.setFax(fornecedor.getFax());
				frn.setEmail(fornecedor.getEmail());
				frn.setSite(fornecedor.getSite());
				frn.setDataFundacao(fornecedor.getDataFundacao());
			}
			
			
		}
		
	}



}
